Method for wavelength switch network restoration

ABSTRACT

A fiberoptic network with an optical supervisory channel in each of the optical fibers interconnecting the nodes of the network is described. Together with IP routers, the optical supervisory channels form a control network over which signaling and control signals are exchanged by which provisioning and restoration operations are performed at each node. To restore connections between the nodes upon a failure of the network, the control network helps to maintain at each node a synchronized database of network connections between the nodes, send messages to other nodes to initiate restoration operations by a node noticing the failure; and recalculate network connections around the failure by each node from a synchronized database at the node.

CROSS-REFERENCES TO RELATED APPLICATIONS

[0001] This patent application claims priority from Provisional PatentApplication Nos. 60/215,182 and 60/215,399, both filed Jun. 29, 2000 andare hereby incorporated by reference.

BACKGROUND OF THE INVENTION

[0002] The present patent application is related to fiberoptic networks,and, in particular, to switches for WDM and DWDM network systems.

[0003] In WDM (Wavelength Division Multiplexing) fiberoptic networks,optical signals are sent at predetermined wavelengths over opticalfibers. Each predetermined wavelength forms a communication channel inthe network and the wavelength (or frequency) of the optical signal isused to control the destination of the signal through the network. Anadvanced version of WDM networks is the DWDM (Dense Wavelength DivisionMultiplexing) network in which the number of wavelength channel isincreased by reducing the channel wavelength separation to 100 GHz, asset by the ITU (International Telecommunications Union). Hence the term,DWDM, is used herein to refer to both WDM and DWDM networks and otherfiberoptic networks which rely upon wavelength to define communicationchannels, unless indicated otherwise.

[0004] In networks, including such fiberoptic networks described above,switches or routers are used to select paths for signals through thenetworks. In fiberoptic networks switches and routers not only directoptical signals from one optical fiber to another but also from onewavelength channel to another. The availability of light paths iscritical to the users of a network. One way to provide reliability for alight path within the network is to explicitly provide for a redundantpath beforehand. However, this approach does not utilize the bandwidthof the network efficiently, i.e., some of the available network capacityis removed for the backup reserve.

[0005] The present invention, on the other hand, is directed towardon-the-fly light path restoration to achieve efficient bandwidth usageand availability at the same time. New paths are quickly reroutedthrough the network in place of the lost light paths.

SUMMARY OF THE INVENTION

[0006] The present invention provides for a method of operation in anoptical network having a plurality of interconnected nodes with eachnode capable of selectively switching optical signals in a firstwavelength channel in an input fiber to any one of a plurality ofwavelength channels and output fibers. The method restores connectionbetween the nodes upon a failure of the network by maintaining at eachof the nodes a synchronized database of network connections between thenodes; sending messages to other nodes to initiate restorationoperations by a node noticing the failure; and recalculating the networkconnections around the failure by each node from the synchronizeddatabase at each node. Each node performs the recalculationindependently.

[0007] The present invention also provides for a fiberoptic networkhaving a plurality of interconnected nodes with each node capable ofselectively switching optical signals in a first wavelength channel inan input fiber to any one of a plurality of wavelength channels andoutput fibers. A reserved wavelength channel between the interconnectednodes forms an optical supervisory channel to create a control networkuseful for network restoration and provisioning operations.

BRIEF DESCRIPTION OF THE DRAWINGS

[0008]FIG. 1A is an exemplary DWDM network of a plurality of switchnodes operating according to the present invention; FIG. 1B illustratesthe organization of the administrative and control network of the FIG.1A switch nodes;

[0009]FIG. 2 illustrates the architecture of a switch forming one of theFIGS. 1A and 1Bswitch nodes; and

[0010]FIG. 3 illustrates the transitions from one state to another for aswitch node, according to the present invention.

DESCRIPTION OF THE SPECIFIC EMBODIMENTS

[0011] Traditional network restoration techniques utilize a centralnetwork controller. When the network controller is notified of a networkfailure, it may signal provisioning information to one or more nodes inthe network to implement alternate routes for circuits affected by thefailure. The calculation of the alternate routes may occur before orafter the failure.

[0012] The present invention seeks to speed up this process by utilizingembedded, distributed control logic in each node. The chief benefit ofthis distributed approach is a significant saving of signaling timesbetween the nodes of the network. FIG. 1A illustrates an exemplaryfiberoptic network with a plurality of switch nodes. Five switch nodes10-14 have been selected for the purposes of explanation. More or lessswitch nodes could be used. Each of the switch nodes 10-14 is connectedto external data fiberoptic lines 20, 22, 24, 26 and 28 respectively,which are represented by dotted lines. For example, the switch node 10is connected to a plurality of fiberoptic lines connected to sources andreceivers (not shown) external to the fiberoptic network, which linesare represented by the line 20. Likewise, the switch node 11 isconnected to a plurality of externally-connected fiberoptic linesrepresented by the line 22, and so on. Within the fiberoptic network,the switch nodes 10-14 are interconnected by fiberoptic lines 21, 23,25, 27, 29, 30 and 31 carrying data signals control.

[0013] For example, the line 21 represents a plurality of fiberopticlines carrying data between the switch nodes 10 and 11. For controllingthe operations of the pair of switch nodes (and the other switch nodes),the network reserves a wavelength channel in one or more of the opticalfibers to carry control signals. The reserved wavelength channel may beone of the ordinary WDM wavelength channels, or the reserved wavelengthchannel might be a channel specially created for control signals. Forexample, a current WDM standard specifies 64 wavelength channels in oneoptical fiber and the reserved wavelength channel would be the 65^(th)channel placed at the wavelength boundary of the 64 channels. Likewise,the node 10 also is connected to the line 29 which represents aplurality of fiberoptic lines carrying data and control signals betweenthe switch nodes 10 and 14, and so forth.

[0014] These reserved wavelength channels form a optical supervisorychannel for control and signaling operations for the FIG. 1A network.The supervisory channels are marked with the suffix “A” after thereference numerals of the fiberoptic lines 21, 23, 25, 27, 29, 30 and 31between the nodes 10-14 in which are embedded an IP (Internet Protocol)router 10A-14A. A processor and memory in each embedded router 10A-14Ahandles the administrative control operations of the associated node,including the provisioning and restoration operations described below.The network of dotted lines 21A, 23A, 25A, 27A, 29A, 30A and 31A and theIP routers 10A-14A form a control network for the data network shown inFIG. 1A. For these control and signaling functions, IP signals andcommands are used with IP routers from Cisco Systems, Inc. of San Jose,Calif.

[0015] Besides the reserved wavelength channels illustrated by thedotted lines 21A, 23A, 25A, 27A, 29A, 30A and 31A between the switchnodes 10-14, an alternative control network can be used, i.e., theInternet. As illustrated in FIG. 1B, the IP routers 10A-14A are alsoconnected to the Internet by connections indicated by dotted lines32-36.

[0016] The particular architecture of the switch nodes 10-14 isillustrated in FIG. 2. Each switch node is a fiberoptic switch which isconnected, in this example, between N input optical fibers 40 ₁-40 _(N)and N output optical fibers 41 ₁-41 _(N). Depending upon the particularswitch node 10-14, these optical fibers 40 ₁-40 _(N) and 41 ₁-41 _(N)correspond to the FIG. 1A lines which represent externally-connectedoptical fibers 20, 22, 24, 26 and 8, and switch node-connected opticalfibers 21, 23, 25, 27, and 29-31 in FIG. 1A. Being part of a DWDMfiberoptic network, the input and optical fibers 40 ₁-40 _(N) and 41₁-41 _(N) are in which each of the optical fibers carries signals in Mwavelength channels. Three input and three output fibers are illustratedin FIG. 2 for purposes of simplicity. The switch operates so thatoptical signals in any wavelength channel on any input fiber can beswitched to any wavelength channel on any output fiber.

[0017] The fiberoptic switch of FIG. 2 has demultiplexers 48, tunablechannel cards 42, a switch fabric formed by switch modules 43, combiners44 and a control unit 47. It should be noted that ordinary referencenumerals refer to elements in the drawings and subscripts to thereference numerals are used to denote the specific instances of theseelements. Each of the input fibers 40 ₁, 40 ₂-40 _(N) are respectivelyconnected to one of a corresponding number of demultiplexers 48 ₁, 48₂-48 _(N). Each of the demultiplexers separates the incoming opticalsignals by their wavelength channels. The signals of a separatedwavelength channel are sent to a tunable channel card; hence for eachdemultiplexer 48 ₁, 48 ₂-48 _(N), there are M tunable channel cards, onefor each wavelength channel. Each tunable channel card receives theoptical signals in one wavelength channel and can translate the signalsinto a second wavelength channel, responsive to control signals from thecontrol unit 47. Since there are N input fibers 40, each fiber having Mchannels, there are N×M tunable channel cards 42.

[0018] The tunable channel cards 42 are connected to a switch fabric,which, in conventional network switching terminology, constitutes theportion of a switch which performs the actual switching function. In thecase of the FIG. 2 switch, the switch fabric is formed by M N×N switchmodules associated with each one of the M wavelength channels. Theinputs of each of the switch modules 43 are connected to each tunablechannel card associated with the wavelength channel of that switchmodule. In the exemplary fiberoptic switch of FIG. 2, the switch module43 ₁ which receives wavelength channel 1 is connected to tunable channelcard 42 ₁₁, 42 ₂₁-42 ₃₁. The switch module 43 _(M) receives the signalsfrom the tunable channel cards receiving signals in the Mth wavelengthchannel, i.e., cards 42 _(1M), 42 _(2M)-42 _(3M). Each of the switchmodules 43 has each of its N outputs connected to one of the N combiners44, which are each connected to one of the output optical fibers 41. Thefirst output terminals of all the switch modules 43 are connected to thecorresponding input terminals of the first combiner 44 ₁. The secondoutput terminals of all the switch modules 43 are connected to thecorresponding input terminals of the second combiner 44 ₂. This patternis repeated for all N output terminals of each switch module 43 ₁-43_(M)

[0019] The N×N switch module 43 is formed from N1- to-N switch elements45 and N N-to-1 combiners 46. The number 1 output terminals of theswitch elements 1-N are connected to the corresponding input terminals1-N of the first combiner 46 ₁. The number 2 output terminals of theswitch elements 1-N are connected to the corresponding input terminals1-N of the second combiner 46 ₂. This pattern is repeated for all Noutput terminals of each switch element 45 ₁-45 _(N). Each switchelement 45 corresponds to one of the inputs to the N×N switch module 43.To connect any input terminal to a specific output terminal of theswitch module 43, the switch element 45 for that input terminal is setto the position for that output terminal. In this manner, signals on anycombination of input terminals of the described fiberoptic switch can besent to any combination of output terminals, with two constraints. Anysingle input terminal can only be connected to a single output terminalat a time. If multiple input terminals are connected to a single outputterminals, the signals on the multiple input terminals must benoninterfering (i.e., the signals must be at differentwavelengths/frequencies).

[0020] Operationally, to connect an incoming signal on some input fiber40 at a first wavelength to an output fiber 41 on a differentwavelength, two operations must be performed. First, the tunable channelcard 42 which is associated with the incoming signal at the firstwavelength on the input fiber 40 must be tuned to translate the signalto the correct outgoing wavelength. Also, the switch module 43associated with that tunable channel card 42 must be configured to sendthe signal to the correct output fiber 41. These operations of thechannel cards 42 and the switch modules 43 are directed by the controlunit 47, which contains a processor unit, such as a microprocessor or amicrocontroller, and memory 48. The memory 48 includes nonvolatileportions to hold software for restarting switch operations after thesystem goes down for any reason.

[0021] The reconfiguration process can be done fairly quickly. First,the input switch stage (i.e., the switch element 45) is turned off todisconnect the laser source in the tunable channel card 42. In analternative arrangement, rather than switch elements 45 with off/onfunctions, off/on switches are placed between the switch elements 45 andthe tunable channel cards 42, and the switch for the particular switchelement 45 is turned off to disconnected the laser source in the tunablechannel card 42. Then the laser is tuned to the new wavelength and theswitch elements 45 in the corresponding switch module 43 are set to thecorrect states for the new configuration and the connection turned backon.

[0022] Hence these switches direct optical signals through designatedoptical fibers 20-31 and through the M wavelength channels in the FIG.1A optical network. More details of these switches may be found in U.S.application No. 09/648,518, entitled, “Scalable DWDM Network SwitchArchitecture With Wavelength Tunable Sources,” filed Aug. 25, 2000 byChien-Yu Kuo, Niraj Gupta and Ronald Garrison, and assigned to thepresent assigneeand which is incorporated herein by reference. However,it should be appreciated that the present invention is also applicableto fiberoptic networks with routers, hosts, and other types of switchesat the nodes of the network.

[0023] The optical supervisory channels in the optical fibers 21, 23,25, 27, 29-31 carry signaling and control signals between the switchnodes 10-14 for the restoration and provisioning operations. As statedpreviously, the signaling and control signals are in the form of IPcommands through the IP routers 10A-14A. If one or more of the networkcomponent fails, network operations must be restored. For example, inthe exemplary network of FIG. 1A, one or more of the optical fibers20-31 may be cut to cause the loss of all the communication links of theoptical fiber, or a laser source in a channel card may becomeinoperative to cause the loss of one link. Such a condition requiresthat the signals be rerouted and the links in the network be restored.Besides such a system-initiated recovery from a hardware failure, anetwork user might wish to initiate a configuration or reconfigurationof the network. Such an operation is often termed provisioning.

[0024] The optical supervisory channels indicated by the dotted lines21A, 23A, 25A, 27A, 29A-31A in FIG. 1B are used for restoration andprovisioning operations and in FIG. 2, these channels are symbolicallyrepresented by fibers 49A, which are arbitrarily shown as three innumber, and coupled to an IP router 50A. The optical signals received onthese optical supervisory channels are converted into electrical signalsby the IP router 50A for input into the control unit 47. Similarly, thecontrol unit 47 communicates to other control units in the switches ofthe network by converting the control unit's electrical output signalsinto optical signals and transmitting the signals through the IP router50A onto the fibers 49A.

[0025] To handle these operations, restoration and provisioning softwareis stored in each switch node 10-14. The software contains both switchnode management control software for each switch node and managementsystem software for the whole mesh network. The two software componentsare divided and the management system software can be placed in theswitch node or in a unit separated from the switch node, such as astandalone UNIX/NT box. The software interacts with two managementinformation databases also stored at each switch node. One database is alocal management information database which holds information about theswitch node and the other is a network management information databasewhich contains the cross-connect provisioning status across the entiremesh network. Only the restoration and provisioning operations canresult in a database change. But the network management informationdatabase at each switch node must be guaranteed to be consistent acrossthe entire mesh network with the other switch nodes for proper operationof the network. This is carried out by network synchronization.

[0026] To guarantee the database on each switch node is synchronized,the network operation is carried out either at every node or none atall. The initiating node of the operations determines whether theoperation is successful or not, based on the acknowledgment from eachnode. The transaction is completed if every node carries out theoperation successfully. Otherwise, the initiator sends out an aborttransaction message to every node to cancel the operation.

[0027] The restoration operation is carried out in the following manner:First, a network restoration initiation message is broadcast through thenetwork by the initiating switch node, i.e., the node noticing thehardware failure. The restoration calculation is done independently byeach node at each local management information database upon receivingthe restoration message and is coordinated by the initiating switchnode. The calculation is based on the network management informationdatabase which is synchronized to be consistent at all times with themanagement information databases at the other nodes.

[0028] For the provisioning operations, a provisioning command modifiesthe cross-connect setup of the network and passes through a multiphasetransaction protocol. First, the provisioning command is sent throughthe entire network to reserve the resource to be provisioned. The switchnode issuing the command receives responses from all the switch nodes ofthe network. If all the responses are affirmative, the commanding nodesends a “do-it” command to the entire network to do the actualprovisioning operations as commanded. All the switch nodes sendresponses back to the commanding node as to the success of theprovisioning operation and the commanding node either commits or abortsthe entire transaction depending upon the responses.

[0029] Since a restoration transaction has higher priority than aprovisioning transaction, the restoration transaction may or may notpre-empt the provisioning transaction before initiating the restoration.This depends upon whether the database is synchronized or not. At anytime there can be no more than two transactions in progress, oneprovisioning transaction and one restoration transaction. Eachtransaction has a unique transaction number across the whole network.

[0030] To carry out these operations, each switch node has a networkoperation transaction state machine with the initial state as the Idlestate. The switch node also keeps a Next Available Transaction Number(NATN), which is initialized to a default value and is then synchronizedonce it joins the network. The states are as follows:

[0031] Idle Neither Provisioning nor Restoration transaction is inprogress.

[0032] Init_RSV Provisioning transaction is in progress. The node is theinitiator of this transaction and is in Reserved (RSV) state.

[0033] RSV Provisioning transaction is in progress. The node is NOT theinitiator of this transaction and is in Reserved state.

[0034] Init_CMT Provisioning transaction is in progress. The node is theinitiator of this transaction and is in Committed (CMT) state.

[0035] CMT Provisioning transaction is in progress. The node is NOT theinitiator of this transaction and is in Committed state.

[0036] Init₁₃ RST Restoration transaction is in progress. The node isthe initiator of this transaction and is in Restored (RST) state.

[0037] RST Restoration transaction is in progress. The node is NOT theinitiator of this transaction and is in Restored state.

[0038] Init_RSV & Init_RST Both Provisioning and Restorationtransactions are in progress. The node initiates both transactions andis in Reserved and Restored State for each transaction respectively.

[0039] Init_CMT & Init_RST Both Provisioning and Restorationtransactions are in progress. The node initiates both transactions andis in Committed and Restored State for each transaction respectively.

[0040] RSV & RST Both Provisioning and Restoration transactions are inprogress. The node initiates NEITHER transaction and is in Reserved andRestored State for each transaction respectively.

[0041] CMT & RST Both Provisioning and Restoration transactions are inprogress. The node initiates NEITHER transaction and is in Committed andRestored State for each transaction respectively.

[0042] Init_RSV & RST Both Provisioning and Restoration transactions arein progress. The node initiates the Provisioning transaction but NOT theRestoration transaction and is in Reserved and Restored State for eachtransaction respectively.

[0043] Init_CMT & RST Both Provisioning and Restoration transactions arein progress. The node initiates the Provisioning transaction but NOT theRestoration transaction and is in Committed and Restored State for eachtransaction respectively.

[0044] RSV & Init_RST Both Provisioning and Restoration transactions arein progress. The node initiates the Restoration transaction but NOT theProvisioning transaction and is in Reserved and Restored State for eachtransaction respectively.

[0045] CMT & Init_RST Both Provisioning and Restoration transactions arein progress. The node initiates the Restoration transaction but NOT theProvisioning transaction and is in Committed and Restored State for eachtransaction respectively.

[0046] The transition from state to another in a switch node istriggered by a message or an event. A triggering message is generated byan operation-initiating switch node for transmission to the other switchnodes. A triggering event results from a user request or acknowledgmentfrom other node. FIG. 3 illustrates the possible transitions for aswitch node from one state to another as a result of a message or event.States are indicated by boxes and the transitions are indicated byarrows between the states and labeled with the triggering message orevent. For convenience, the table below lists the possible transitionsfrom one state to another, the transition's triggering message or event,the resulting actions at the transitioning switch node with transitionreference numerals as used in FIG. 3. Trigger Ref. (event/ From- To-num. msg) State State Action 51 RSV Idle RSV Reserve in management msginformation database. Send confirmation back to initiating node. PROV_TN= NATN Increment NATN. 52 PROV Idle Init_(—) Reserve in management eventRSV information database. Send RSV msg with NATN to every node. PROV TN= NATN. Increment NATN. 53 RST Idle RST Restore in management msginformation database and hardware as requested. Send confirmation backto initiating node. RST_TN = NATN. Increment NATN. 54 RST Idle Init_(—)Restore in management event RST information database and hardware. SendRST msg with NATN to every node. RST_TN = NATN. Increment NATN. IdleIdle 55 RSV_(—) Init_(—) Idle If receive RSV_(—) FAIL RSV DENIED msg,abort PROV event local and send ABORT_(—) PROV msg to every node. (Iftimeout, abort PROV and exclude the timed out nodes from topology. RetryPROV again.) 56 CMT Init_(—) Init_(—) Commit in management event RSV CMTinformation database and hardware. Send CMT msg to every node. 57 RSTInit_(—) Init_(—) Restore in management event RSV RSV informationdatabase and Init_(—) hardware. Send RST msg RST with NATN to everynode. Increment NATN. 58 Rst msg Init_(—) RST Abort PROV locally. TN =RSV Send ABORT_PROV PROV_(—) msg to every node. TN Restore in managementinformation database and hardware as requested. Send confirmation backto initiating node. 59 RST msg Init_(—) Init_(—) Restore in managementTN = RSV RSV information database and NATN RST hardware as requested.Send confirmation to initiating node. Increment NATN. Init_(—) Init_(—)RSV RSV 60 ABORT_PROV RSV Idle Abort PROV locally. msg 61 CMT msg RSVCMT Commit in management information database and hardware. Sendconfirmation back to initiating node. 62 RST msg RSV RST Abort PROVlocally. TN = Restore in management PROV_(—) information database TN andhardware as requested. RST_TN = msg TN Send confirmation to initiatingnode. 63 RST msg RSV RSV Restore in management TN = RST informationdatabase and NATN hardware as requested. Send confirmation to initiatingnode. Increment NATN 64 RST RSV RSV Restore in manage- event Init_(—)ment information RST database and hardware. Send RST msg with NATN toevery node. Increment NATN. RSV RSV 65 CMT_FAIL/ Init_(—) Idle IfCMT_FAIL, abort CMT_DONE CMT PROV locally and send event ABORT_PROV msgto every node. (If timeout, abort PROV and exclude the timed out nodesfrom topology. Retry PROV again.) If CMT_DONE, send PROV_DONE msg toinitiating node. 66 RST event Init_(—) Init_(—) Restore in managementCMT CMT information Init_(—) database and hardware. RST Send RST msgwith NATN to every node. Increment NATN. 67 RST msg Init_(—) Init_(—)Restore in management CMT CMT information database RST and hardware asrequested. Send confirmation to initiating node. Increment NATN.Init_(—) Init_(—) CMT CMT 68 ABORT_PROV/ CMT Idle If ABORT_PROV, abortPROV_DONE locally. msg If PROV_DONE, do nothing 69 RST msg CMT CMTRestore in management RST information database and hardware asrequested. Send confirmation to initiating node. Increment NATN. 70 RSTevent CMT CMT Restore in Init_(—) management RST information databaseand hardware. Send RST msg with NATN to every node. Increment NATN. CMTCMT 71 RST_DONE/ Init_(—) Init_(—) If RST_DONE, do nothing ABORT_RST RSVRSV IF ABORT_RST, abort msg RST RST in management information databaseand hardware. 72 CMT event Init_(—) Init_(—) Commit in management RSVCMT information database RST RST and hardware. Send CMT msg to everynode. 73 RSV_FAIL Init_(—) RST Abort PROV locally. event RSV SendABORT_PROV msg to every node. Init_(—) Init_(—) RSV RSV RST RST 74RST_DONE/ Init_(—) Init_(—) If RST_DONE, send RST_FAIL RSV RSV RST_DONEmsg event Init_(—) to every RST node. If RST_FAIL, abort RST locally andsend ABORT_RST msg to every node. 75 CMT event Init_(—) Init_(—) Commitin management RSV CMT information database and Init_(—) Init_(—)hardware. RST RST Send CMT msg to every node. 76 RSV_FAIL Init_(—)Init_(—) Abort PROV locally. event RSV RST Send ABORT_PROV msg Init_(—)to every node. RST Init_(—) Init_(—) RSV RSV Init_(—) Init_(—) RST RST77 RST_DONE/ Init_(—) Init_(—) If RST_DONE, ABORT_RST CMT CMT donothing. msg RST If ABORT_RST, abort RST locally. 78 CMT_DONE/ Init_(—)RST If CMT_DONE, send CMT_FAIL CMT PROV_DONE msg event RST to everynode. If CMT_FAIL, abort PROV locally and send ABORT_PROV msg to everynode. Init_ Init_ RSV RSV Init_(—) Init_(—) RST RST 79 RST_DONE/Init_(—) Init_(—) If RST_DONE, send RST_FAIL CMT CMT RST_DONE msg toevent Init_(—) every node. RST If RST_FAIL, abort RST locally and sendABORT_(—) RST msg to every node. 80 CMT_DONE/ Init_(—) Init_(—) IfCMT_DONE, send CMT_FAIL CMT RST PROV_DONE msg event Init_(—) to everynode. RST If CMT_FAIL, abort PROV locally and send ABORT_(—) PROV msg toevery node. Init_ Init_ CMT CMT Init_(—) Init_(—) RST RST 81 RST_DONE/Init_(—) Idle If RST_DONE, RST_FAIL RST send RST_DONE event msg to everynode. If RST_FAIL, abort RST locally and send ABORT_RST msg to everynode. Init_(—) Init_(—) RST RST 82 RST_DONE/ RST Idle If RST_DONE, donothing ABORT_RST If ABORT_RST, msg abort RST locally. RST RST 83RST_DONE/ RSV RSV If RST_DONE, do nothing. ABORT_RST RST If ABORT_RST,msg abort RST locally. 84 CMT msg RSV CMT Commit in management RST RSTinformation database and hardware. Send confirmation to initiating node.85 RSV_FAIL RSV RST Abort PROV locally. msg RST RSV RSV RST RST 86RST_DONE/ RSV RSV If RSV_DONE, send RST_FAIL Init_(—) RST_DONE msg toevent RST every node. If RST_FAIL, abort RST locally and send ABORT_(—)RST msg to every node. 87 CMT msg RSV CMT Commit in management Init_(—)Init_(—) information database RST RST and hardware. 88 RSV_FAIL RSVInit_(—) Abort PROV locally. msg Init_(—) RST RST RSV RSV Init_(—)Init_(—) RST RST 89 RST_DONE/ CMT CMT If RST_DONE, do nothing. ABORT_RSTRST If ABORT_RST, abort msg RST locally. 90 PROV_DONE/ CMT RST IfPROV_DONE, do nothing. ABORT_PROV RST If ABORT_PROV, msg abort PROVlocally. CMT CMT RST RST 91 RST_DONE/ CMT CMT If RST_DONE, send RST_(—)RST_FAIL Init_(—) DONE msg to every node. event RST IF RST_FAIL, abortRST locally and send ABORT_(—) RST msg to every node. 92 POV_DONE/ CMTInit_(—) If PROV_DONE, do nothing. ABORT_PROV Init_(—) RST IfABORT_PROV, msg RST abort PROV locally. CMT CMT Init_(—) Init_(—) RSTRST

[0047] In the described distributed network approach, the principalobjective of the signaling protocol is to disseminate the failure eventinformation to every node in the network as quickly as possible. Hencesignaling is used for the failure event information only, and not tocross-connect provisioning information. Broadcast mechanisms are usedfor signaling, which use pre-provisioned fixed alternate routes throughthe optical supervisory channels.

[0048] Each failure event message is identified by the source node and anode-specific Failure Event Message Number. Each receiving node keepstrack of each other node's current Failure Event Message Number. If aduplicate is received, it is ignored and discarded. In the case of abi-directional fiber cut, two nodes detect the same network failure andeach initiate the broadcast signaling. In this case, other nodes in thenetwork must reconcile the two failure event messages as describing thesame single event. In order to perform such reconciliation, each nodestarts a timer upon receipt of a failure event message. If another“similar” failure event message is received before expiration of thetimer, then the new message is ignored and discarded.

[0049] In order to better utilize the embedded IP (Internet Protocol)routers 10A-14A of each node 10-14, multiple fixed alternate routes arepre-provisioned from each node to every other node in the network. Uponlocal detection of a network failure, a node transmits a series of IPpackets, each containing the failure event message, one for each fixedalternate route to each node. The IP router network (illustrated by thenetwork in FIG. 1B) then handles the delivery of the IP packets to theirfinal destinations. By provisioning more than one route between eachpair of nodes, the network is guarded against changes in the networktopology, for example, a fiber cut. If one route is blocked by a failedfiber, the other IP packet following the other route has a continuouspath to its destination.

[0050] The receiving nodes detect and discard duplicate messages. Hence,after a switch node receives a failure event message, the nodeparticipates in the flooding protocol described above. The switch nodethen releases all the wavelength channel resources (i.e., bandwidth) ofthe optical circuits available for use by alternate routes, despite thenetwork failure. Then in priority order, the shortest path for eachaffected circuit is recalculated, using only available, i.e., in servicebut unused, network resources. The optical circuits are restored in apredetermined prioritized order in this manner.

[0051] Each switch node recalculates a new path for each circuit whoseactive path had traversed the failed link. Each node evaluates theresults of the path calculation to determine whether or not that nodemust execute any new cross-connects. If so, the cross-connects areexecuted. If not, then that node takes no action, and its participationin the network restoration is completed. All switch nodes perform theidentical deterministic calculation, and therefore arrive at the sameconclusion.

[0052] To determine the alternate routes, the switch nodes use a versionof E.W. Djikstra's “Shortest Path First” (SPF) algorithm to routecircuits. U.S. patent application No. ______, entitled “ImprovedShortest Path First Restoration Routing In a Fiberoptic Network,” filedof even date by Peter Abrams and assigned to the present assignee, andwhich application is incorporated herein by reference, describes themodified implementation of the SPF algorithm in its operation in theexemplary FIGS. 1A and 1B network. Also the particular link metrics,such as number of hops, path delay, link cost, etc., used in thealgorithm are also described.

[0053] Therefore, while the description above provides a full andcomplete disclosure of the preferred embodiments of the presentinvention, various modifications, alternate constructions, andequivalents will be obvious to those with skill in the art. Thus, thescope of the present invention is limited solely by the metes and boundsof the appended claims.

What is claimed is:
 1. In an optical network having a plurality ofinterconnected nodes, each node capable of selectively switching opticalsignals in a first wavelength channel and an input fiber and to any oneof a plurality of wavelength channels and output fibers, a method ofrestoring connection between said nodes upon a failure of said network,said method comprising maintaining at each of said nodes a synchronizeddatabase of network connections between said nodes; sending messages toother nodes to initiate restoration operations by a node noticing saidfailure; and recalculating network connections around said failure byeach node from a synchronized database at said node.
 2. The method ofclaim 1 wherein said recalculating network connections step is performedindependently by each node.
 3. The method of claim 2 wherein saidsynchronized database maintaining step comprises accepting results ofsaid recalculating network connections at all of said interconnectednodes of said optical network; or rejecting said results of saidrecalculation steps at all of said interconnected nodes of said opticalnetwork if one or more nodes do not complete said recalculation networkconnections step successfully.
 4. The method of claim 3 wherein saidaccepting results substep is performed upon acknowledgment by each nodeof successful completion of said recalculation network connections step.5. The method of claim 4 wherein successful completion of saidrecalculation network connections step is acknowledged by transmittingan acknowledgment message to said node noticing said failure, said nodetransmitting a message to all other of said interconnected nodes of saidoptical network to update databases of said interconnected nodes of saidoptical network with said results.
 6. The method of claim 3 wherein saidrejecting results substep is preformed by lack of acknowledgment by oneor more nodes of successful completion of said recalculation networkconnections step.
 7. The method of claim 6 wherein said node noticingsaid failure transmitting a message to all other of said interconnectednodes of said optical network to abort said results.
 8. A fiberopticnetwork having a plurality of interconnected nodes with each nodecapable of selectively switching optical signals in a first wavelengthchannel in an input fiber to any one of a plurality of wavelengthchannels and output fibers, said fiberoptic network comprising a controlnetwork having a reserved wavelength channel between the interconnectednodes for carrying signaling and control signals for network restorationand provisioning operations.
 9. The fiberoptic network of claim 8wherein said signaling and control signals comprise Internet Protocolsignals.